package com.cskaoyan.javase.basic._7scanner;

import java.util.Scanner;

/**
 * Scanner在使用时一个小细节
 * 引例: 请键盘录入一个int整数,然后再录入一个字符串
 *
 * 结论: 对于Scanner而言,在做单个数据类型键盘录入时,是不会有问题的
 *      比如一次性录入多个int,多个String
 *      但是一旦录入混合数据类型时,比如一次性录入int,String,double等时
 *      就有可能存在问题
 *      这时,就不应该混用nextLine和nextInt等方法
 *      建议只使用nextLine方法
 *
 * @since 15:57
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo2 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请键盘录入一个int整数:");
        int num = sc.nextInt();
        System.out.println("再录入一个字符串:");
        String str = sc.nextLine();

        System.out.println(num);
        System.out.println(str);
        // 输出录入的字符串的长度,发现输出的结果是0
        /*
            字符串长度为0表示一个绝对空的字符串,什么字符都没有,不是null
            绝对空的字符在计算机是存在的,它的编码值是0
         */
        System.out.println(str.length());
    }
}
